<!--$Id: db_recover.so,v 10.32 2007/10/26 15:02:55 bostic Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB: db_recover</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<table width="100%"><tr valign=top>
<td>
<b>db_recover</b>
</td>
</tr></table>
<hr size=1 noshade>
<tt>
<b><pre>db_recover [<b>-cefVv</b>] [<b>-h home</b>] [<b>-P password</b>] [<b>-t [[CC]YY]MMDDhhmm[.SS]]</b>]</pre></b>
<b>Description</b>
<a name="2"><!--meow--></a>
<p>The db_recover utility must be run after an unexpected application,
Berkeley DB, or system failure to restore the database to a consistent state.
All committed transactions are guaranteed to appear after db_recover
has run, and all uncommitted transactions will be completely undone.</p>
<p>The options are as follows:</p>
<br>
<b>-c</b><ul compact><li>Perform catastrophic recovery instead of normal recovery.</ul>
<b>-e</b><ul compact><li>Retain the environment after running recovery.  This option
will rarely be used unless a <a href="../ref/env/db_config.html#DB_CONFIG">DB_CONFIG</a> file is present in the
home directory.  If a <a href="../ref/env/db_config.html#DB_CONFIG">DB_CONFIG</a> file is not present, then the
regions will be created with default parameter values.</ul>
<b>-f</b><ul compact><li>Display a message on the standard output showing the
percent of recovery completed.</ul>
<b>-h</b><ul compact><li>Specify a home directory for the database environment; by
default, the current working directory is used.</ul>
<b>-P</b><ul compact><li>Specify an environment password.  Although Berkeley DB utilities overwrite
password strings as soon as possible, be aware there may be a window of
vulnerability on systems where unprivileged users can see command-line
arguments or where utilities are not able to overwrite the memory
containing the command-line arguments.</ul>
<b>-t</b><ul compact><li>Recover to the time specified rather than to the most current possible
date.  The timestamp argument should be in the form
[[CC]YY]MMDDhhmm[.SS] where each pair of
letters represents the following:</ul>
<br>
<b>CC</b><ul compact><li>The first two digits of the year (the century).</ul>
<b>YY</b><ul compact><li>The second two digits of the year.  If "YY" is specified, but "CC" is not,
a value for "YY" between 69 and 99 results in a "CC" value of 19.  Otherwise,
a "CC" value of 20 is used.</ul>
<b>MM</b><ul compact><li>The month of the year, from 1 to 12.</ul>
<b>DD</b><ul compact><li>The day of the month, from 1 to 31.</ul>
<b>hh</b><ul compact><li>The hour of the day, from 0 to 23.</ul>
<b>mm</b><ul compact><li>The minute of the hour, from 0 to 59.</ul>
<b>SS</b><ul compact><li>The second of the minute, from 0 to 61.</ul>
<br>
<p>If the "CC" and "YY" letter pairs are not specified, the values default
to the current year.  If the "SS" letter pair is not specified, the value
defaults to 0.</p>
<b>-V</b><ul compact><li>Write the library version number to the standard output, and exit.</ul>
<b>-v</b><ul compact><li>Run in verbose mode.</ul>
<br>
<p>In the case of catastrophic recovery, an archival copy -- or
<i>snapshot</i> -- of all database files must be restored along with
all of the log files written since the database file snapshot was made.
(If disk space is a problem, log files may be referenced by symbolic
links).  For further information on creating a database snapshot, see
<a href="../ref/transapp/archival.html">Archival Procedures</a>.  For
further information on performing recovery, see
<a href="../ref/transapp/recovery.html">Recovery Procedures</a>.</p>
<p>If the failure was not catastrophic, the files present on the system at the
time of failure are sufficient to perform recovery.</p>
<p>If log files are missing, db_recover will identify the missing
log file(s) and fail, in which case the missing log files need to be
restored and recovery performed again.</p>
<p>The db_recover utility uses a Berkeley DB environment (as described for the
<b>-h</b> option, the environment variable <b>DB_HOME</b>, or
because the utility was run in a directory containing a Berkeley DB
environment).  In order to avoid environment corruption when using a
Berkeley DB environment, db_recover should always be given the chance to
detach from the environment and exit gracefully.  To cause db_recover
to release all environment resources and exit cleanly, send it an
interrupt signal (SIGINT).</p>
<p>The db_recover utility exits 0 on success, and &gt;0 if an error occurs.</p>
<br><b>Environment Variables</b>
<br>
<b>DB_HOME</b><ul compact><li>If the <b>-h</b> option is not specified and the environment variable
DB_HOME is set, it is used as the path of the database home, as described
in <a href="../api_c/env_open.html">DB_ENV-&gt;open</a>.</ul>
<br>
</tt>
<p><font size=1>Copyright (c) 1996,2008 Oracle.  All rights reserved.</font>
</body>
</html>
